
var $$ = jQuery.noConflict();

// document.onclick = async function () {


    // 全选
    $$('.check-all').on('click', async function () {
        console.log(this);
        // this指向变了  指向all
        // $$('.check-one').prop('checked' , this.checked)
        $$('.check-one').prop('checked', $$(this).prop('checked'));

        total();
    })



    // 反选
    $$('.cartbox').on('click', '.check-one', async function () {
        // each() jquery遍历方法 为每个匹配元素规定要运行的函数。

        // $$('.check-one').each(function(index,element))
        // 参数	                        描述
        // function(index, element)	    必需。为每个匹配元素规定运行的函数。
        //                              index - 选择器的 index 位置。角标
        //                              element - 当前的元素（也可使用 "this" 选择器）。
        $$('.check-one').each(async (i, v) => {
            console.log(v); // 拿到所有的check-one
            if (!$$(v).prop('checked')) {
                $$('.check-all').prop('checked', false);

                // 提示：返回 false 可用于及早停止循环。
                return false;
            }
            $$('.check-all').prop('checked', true);
        })

        total();
    })



    // 单删
    $$('.cartbox').on('click', '.delete', async function () {
        //   parents()  找指定的祖先元素
        const id = $$(this).parents('tr').attr('data-id');
        console.log(id);
        const res = await myDelete({
            username: user,
            id
        })
        console.log(res);
        const { status, msg } = res;
        if (status) {

            $$(this).parents('tr').remove();

            // 单独删除的时候，有可能全选可以选中,如：勾选了三个商品，删除未勾选的，全选框要勾选
            $$('.check-one').each((i, v) => {
                if (!$$(v).prop('checked')) {
                    $$('.check-all').prop('checked', false);
                    return false;
                }

                $$('.check-all').prop('checked', true);
            })

            console.log(6);

            // // 全部删除以后，全选就不勾选
            // if ($$('.check-one').prop('checked', false)) {
            //     $$('.check-all').prop('checked', false);
            //     console.log($$('.check-one'));
            // }

            total();
        } else {
            alert(msg);
        }

    })


    // 批量删除
    $$('.cartbox').on('click', '#deleteAll', async function () {
        console.log(this);
        $$('.check-one').each(async (i, v) => {
            if ($$(v).prop('checked')) {
                const id = $$(v).parents('tr').attr('data-id');
                console.log(v);
                const res = await myDelete({
                    username: user,
                    id
                })
                console.log(res);
                const { status, msg } = res;
                if (status) {
                    $$(v).parents('tr').remove();
                    // 全部删除以后，全选就不勾选
                    if ($$('.check-one').prop('checked', false)) {
                        $$('.check-all').prop('checked', false);
                    }
                    total();
                } else {
                    alert(msg);
                }
            }
        })
    })



    // 数量加
    $$('.cartbox').on('click', '.add', async function () {
        const goods_id = $$(this).parents('tr').attr('data-id');
        console.log(goods_id);
        const res = await addToCart({
            username: user,
            goods_id,
            num: 1
        })
        const { status, msg } = res;

        if (status) {
            // 数量
            let number = $$(this).prev().val();
            $$(this).prev().val(++number);
            // 总价
            let price = $$(this).parent().prev().html();
            $$(this).parent().next().html(number * price);

            // 添加减号 把off去掉
            if ($$(this).prev().prev().hasClass('off_')) {
                // if (number > 1) {
                $$(this).prev().prev().html('-');
                $$(this).prev().prev().removeClass('off_');
            }
            total();
        } else {
            alert(msg);
        }
    })


    // 数量减
    $$('.cartbox').on('click', '.reduce', async function () {
        // alert(666)
        if ($$(this).html()) {
            const goods_id = $$(this).parents('tr').attr('data-id');
            const res = await addToCart({
                username: user,
                goods_id,
                num: -1
            })
            const { status, msg } = res;
            if (status) {
                // 数量
                let number = $$(this).next().val();
                $$(this).next().val(--number);
                // 总价
                let price = $$(this).parent().prev().html();
                $$(this).parent().next().html(number * price);

                // 判断能不能减
                if (number <= 1) {
                    $$(this).html('');
                    $$(this).addClass('off_');
                }
                total();
            } else {
                alert(msg);
            }
        }
    })

// }



function total() {
    let money = 0;
    let count = 0;
    $$('.check-one').each((i, v) => {
        if ($$(v).prop('checked')) {
            money += $$(v).parents('tr').find('td:nth-child(5)').html() * 1;
            count += $$(v).parents('tr').find('.count-input').val() * 1;
        }
    })
    $$('#priceTotal').html(money);
    $$('#selectedTotal').html(count);
}